package com.wxm.service;

import com.wxm.eum.PaySceneEnum;
import com.wxm.param.TlCancelParam;
import com.wxm.param.TlQueryParam;
import com.wxm.param.TlRefundParam;
import com.wxm.param.TlUnifiedPayParam;
import com.wxm.result.TlCancelResult;
import com.wxm.result.TlQueryResult;
import com.wxm.result.TlRefundResult;

/**
 * <p>
 *      通联支付Service
 * </p>
 *
 * @author: wxm
 * @Date: 2023/4/7
 */
public interface TongLianService {
    /**
     * 获取统一支付信息
     * @param param 参数
     * @param paySceneEnum 支付场景
     * @return String
     */
    String unifiedPay(TlUnifiedPayParam param, PaySceneEnum paySceneEnum);

    /**
     * 统一撤销接口
     * @param param 参数
     * @return TlCancelResult
     */
    TlCancelResult cancel(TlCancelParam param);

    /**
     * 统一退款接口
     * @param param 参数
     * @return TlRefundResult
     */
    TlRefundResult refund(TlRefundParam param);

    /**
     * 统一查询接口
     * @param param 参数
     * @return TlQueryResult
     */
    TlQueryResult query(TlQueryParam param);
}
